﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using QDT.Core.Projects;

namespace QDT.Services.Projects
{
    public interface IProjectTypeService
    {
        /// <summary>
        ///  添加项目类型
        /// </summary>
        /// <param name="type"></param>
        /// <returns></returns>
        ProjectType CreateType(ProjectType type);

        /// <summary>
        ///  修改项目类型
        /// </summary>
        /// <param name="type"></param>
        /// <returns></returns>
        void UpdateType(ProjectType type);

        /// <summary>
        /// 删除项目类型
        /// </summary>
        /// <param name="id">项目类型的ID数组</param>
        void DeleteType(int[] id);

        /// <summary>
        /// 从回收站恢复项目类型
        /// </summary>
        /// <param name="id"></param>
        void RestoreType(int[] id);

        /// <summary>
        /// 永久的删除项目类型
        /// </summary>
        /// <param name="id"></param>
        void ForeverDeleteType(int[] id);

        /// <summary>
        /// 创建项目类型的扩展字段
        /// </summary>
        /// <param name="feild"></param>
        /// <returns></returns>
        ProjectFeild CreateFeild(ProjectFeild feild);


        /// <summary>
        /// 更新项目类型的扩展字段
        /// </summary>
        /// <param name="feild"></param>
        /// <returns></returns>
        void UpdateFeild(ProjectFeild feild);

        /// <summary>
        /// 删除项目类型的扩展字段
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        void DeleteFeild(int[] id);
    }
}
